function [x, k] = gseidel(A, b, error, m, x);
    
	k = 0; 
	norma = 1;
	N = triu(A);
	P = N - A;
	M = inv(N) * P;
	c =  inv(N) * b;
	

	if det(A) != 0
		while (abs(norma) > error) && (k < m)
		
			x0 = x;
			for i = 1 : rows(A)
				x =  (M * x0) + c;
			endfor
			
			norma = norm(x-x0,inf);
			k = k + 1;
			
		endwhile
	else
		fprintf('ERROR, la matriz ingresada es singular!!, pruebe con otra\n')
    endif


endfunction